const App =  getApp();
import { PayModel } from '../../../models/pay.js'
var pingpp = require('../../../utils/pingpp.js')
const ModelPay = new PayModel()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    statusBarHeight: App.globalData.statusBarHeight,
    isTabbar:false,
    amount: 0,
    payDone: false,
    locked: false,
    channel: 8, //支付渠道：1支付宝App支付，2支付宝扫码支付，3微信App支付，4微信公众号支付，5微信扫码支付，6余额支付，7智荟金桥，8微信小程序支付
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    if (options.amount) {
      this.setData({
        amount: options.amount
      })
    }
  },

  // 立即购买
  buy() {
    if (this.data.locked) {
      return
    }
    this.data.locked = true
    const that = this
    const payParams = {
      channel: this.data.channel,
      open_id: App.globalData.userInfo.openId
    }
    // 调起支付
    ModelPay.paymentVip(payParams).then(res => {
        // loading
        wx.hideLoading()
        // ping++支付
        pingpp.createPayment(res.data.order, function (result, err) {
          if (result == 'success') {
            // 只有微信公众号 (wx_pub)、微信小程序（wx_lite）、QQ 公众号 (qpay_pub)支付成功的结果会在这里返回，其他的支付结果都会跳转到 extra 中对应的 URL
            // 查询支付结果
            // 设置已支付完成不刷新页面
            that.data.locked = false
            that.getPayResult(res.data.pid)
          } else if (result == 'fail') {
            App.WxService.showToast({
              title: '支付失败',
              icon: 'none'
            })
            that.data.locked = false
            // Ping++ 对象 object 不正确或者微信公众号/微信小程序/QQ公众号支付失败时会在此处返回
          } else if (result == 'cancel') {
            // 微信公众号、微信小程序、QQ 公众号支付取消支付
            App.WxService.showToast({
              title: '取消支付',
              icon: 'none'
            })
            that.data.locked = false
            // App.WxService.redirectTo('/pages/manager/index/index')
          }
        })
      })
      .catch(err => {
        that.data.locked = false
        // App.WxService.redirectTo('/pages/manager/index/index')
      })
  },
  // 查询支付结果
  getPayResult(pid) {
    setTimeout(function() {
      // 查询支付结果
      ModelPay.paymentVipResult({ pid: pid })
        .then(res => {
          if (res.status == 200) {
            // App.WxService.showToast({
            //   title: '支付成功',
            //   icon: 'none'
            // })
            wx.showModal({
              title: '提示',
              content: '会员购买成功',
              showCancel: false,
              success (res) {
                if (res.confirm) {
                  App.WxService.redirectTo(
                    '/pages/manager/index/index'
                  )
                } 
              }
            })
          }
        })
        .catch(err => {
          // App.WxService.redirectTo(
          //   '/packCart/pages/payOrder/success/index?pid=' + res.data.payCode
          // )
        })
    }, 1000)
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },
})